package de.metalcon.gwt.client.pages;

import java.util.ArrayList;

import de.metalcon.gwt.client.modules.ADynamicModule;

public abstract class AModulePage extends APage {

	public AModulePage() {
		super();
	}

	public AModulePage(String[] parameter) {
		super(parameter);
	}

	@Override
	protected void onLoad() {
		for (ADynamicModule m : getModules()) {
			add(m);
		}
	}

	protected abstract ArrayList<ADynamicModule> getModules();

	@Override
	public String getHistoryToken() {
		String fullName = getClass().getName();
		return fullName.substring(fullName.lastIndexOf(".") + 1);
	}
}